<html>
	<head>
		<meta charset="utf-8"></meta>
		<title>BStyle</title>
		<link href="./style.css" rel="stylesheet" type="text/css"/>
	</head>
	<body>
		<div class="class" name="BStyle">
			<h1>BStyle</h1>
			<p>继承自<a href="BObject.html">BObject</a></p>
			<p id="resume">BStyle是样式类，包含了控件可使用的字体，颜色，数值等数据。<a href="#desc">详细</a></p>
			<h2>public</h2>
			<table id="public">
				<tr><td align="right"/><td><a href="#BStyle(BStyle*)">BStyle</a>(BStyle* parent = 0);</td></tr>
				<tr><td align="right"/><td><a href="#BStyle(const BColor&,BStyle*)">BStyle</a>(const BColor& color, BStyle* parent = 0);</td></tr>
				<tr><td align="right"/><td><a href="#BStyle(const BString&,BStyle*)">BStyle</a>(const BString& name, BStyle* parent = 0);</td></tr>
				<tr><td align="right"/><td><a href="#BStyle(const BString&, const BString&,BStyle*)">BStyle</a>(const BString& type, const BString& name, BStyle* parent = 0);</td></tr>
				<tr><td align="right"/><td><a href="#BStyle(const BStyle&)">BStyle</a>(const BStyle& other);</td></tr>
				<tr><td align="right"/><td><a href="#~BStyle()">~BStyle</a>();</td></tr>
				<tr><td align="right">virtual void </td><td><a href="#copy(const BStyle*)">copy</a>(const BStyle* other);</td></tr>
				<tr><td align="right">virtual BStyle* </td><td><a href="#clone() const">clone</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#reset()">reset</a>();</td></tr>
				<tr><td align="right">void </td><td><a href="#reset(const BColor&)">reset</a>(const BColor& color);</td></tr>
				<tr><td align="right">void </td><td><a href="#setType(const BString&)">setType</a>(const BString& type);</td></tr>
				<tr><td align="right">const BString&amp; </td><td><a href="#type() const">type</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setHeritable(bool)">setHeritable</a>(bool heritable);</td></tr>
				<tr><td align="right">bool </td><td><a href="#heritable() const">heritable</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setDescendant(bool)">setDescendant</a>(bool descendant);</td></tr>
				<tr><td align="right">bool </td><td><a href="#descendant() const">descendant</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setFont(BFont*)">setFont</a>(BFont* font);</td></tr>
				<tr><td align="right">const BFont* </td><td><a href="#font() const">font</a>() const;</td></tr>
				<tr><td align="right">BFont* </td><td><a href="#font()">font</a>();</td></tr>
				<tr><td align="right">void </td><td><a href="#setValue(StyleValue, const BValue&)">setValue</a>(StyleValue name, const BValue& value);</td></tr>
				<tr><td align="right">bool </td><td><a href="#removeVlaue(StyleValue)">removeVlaue</a>(StyleValue name);</td></tr>
				<tr><td align="right">const BValue&amp; </td><td><a href="#value(StyleValue) const">value</a>(StyleValue name) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#setValue(const BString&, const BValue&)">setValue</a>(const BString& name, const BValue& value);</td></tr>
				<tr><td align="right">bool </td><td><a href="#removeValue(const BString&)">removeValue</a>(const BString& name);</td></tr>
				<tr><td align="right">const BValue&amp; </td><td><a href="#value(const char*) const">value</a>(const char* name) const;</td></tr>
				<tr><td align="right">const BValue&amp; </td><td><a href="#value(const BString&) const">value</a>(const BString& name) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#hasValue(StyleValue) const">hasValue</a>(StyleValue name) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#valueNames(BArray<StyleValue>&) const">valueNames</a>(BArray<StyleValue/>& names) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#valueNames(BStringArray&) const">valueNames</a>(BStringArray& names) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#setColor(StyleColor, State, const BColor&)">setColor</a>(StyleColor name, State state, const BColor& color);</td></tr>
				<tr><td align="right">bool </td><td><a href="#removeColor(StyleColor, State)">removeColor</a>(StyleColor name, State state);</td></tr>
				<tr><td align="right">const BColor&amp; </td><td><a href="#color(StyleColor, State) const">color</a>(StyleColor name, State state) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#setColor(const BString&, const BColor&)">setColor</a>(const BString& name, const BColor& color);</td></tr>
				<tr><td align="right">bool </td><td><a href="#removeColor(const BString&)">removeColor</a>(const BString& name);</td></tr>
				<tr><td align="right">const BColor&amp; </td><td><a href="#color(const char*) const">color</a>(const char* name) const;</td></tr>
				<tr><td align="right">const BColor&amp; </td><td><a href="#color(const BString&) const">color</a>(const BString& name) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#hasColor(StyleColor) const">hasColor</a>(StyleColor name) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#hasColor(const char*) const">hasColor</a>(const char* name) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#hasColor(const BString&) const">hasColor</a>(const BString& name) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#colorNames(BStringArray&) const">colorNames</a>(BStringArray& names) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#setImage(StyleImage, State, BImage*)">setImage</a>(StyleImage name, State state, BImage* image);</td></tr>
				<tr><td align="right">bool </td><td><a href="#removeImage(StyleImage, State)">removeImage</a>(StyleImage name, State state);</td></tr>
				<tr><td align="right">BImage* </td><td><a href="#image(StyleImage, State) const">image</a>(StyleImage name, State state) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#setImage(const BString&, BImage*)">setImage</a>(const BString& name, BImage* image);</td></tr>
				<tr><td align="right">bool </td><td><a href="#removeImage(const BString&)">removeImage</a>(const BString& name);</td></tr>
				<tr><td align="right">BImage* </td><td><a href="#image(const char*) const">image</a>(const char* name) const;</td></tr>
				<tr><td align="right">BImage* </td><td><a href="#image(const BString&) const">image</a>(const BString& name) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#hasImage(StyleImage, State) const">hasImage</a>(StyleImage name, State state) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#hasImage(const char*) const">hasImage</a>(const char* name) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#hasImage(const BString&) const">hasImage</a>(const BString& name) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#imageNames(BStringArray&) const">imageNames</a>(BStringArray& names) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#setIcon(StyleIcon, BIcon*)">setIcon</a>(StyleIcon name, BIcon* icon);</td></tr>
				<tr><td align="right">bool </td><td><a href="#removeIcon(StyleIcon)">removeIcon</a>(StyleIcon name);</td></tr>
				<tr><td align="right">BIcon* </td><td><a href="#icon(StyleIcon) const">icon</a>(StyleIcon name) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#setIcon(const BString&, BIcon*)">setIcon</a>(const BString& name, BIcon* icon);</td></tr>
				<tr><td align="right">bool </td><td><a href="#removeIcon(const BString&)">removeIcon</a>(const BString& name);</td></tr>
				<tr><td align="right">BIcon* </td><td><a href="#icon(const BString&) const">icon</a>(const BString& name) const;</td></tr>
				<tr><td align="right">BIcon* </td><td><a href="#icon(const char*) const">icon</a>(const char* name) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#hasIcon(StyleIcon) const">hasIcon</a>(StyleIcon name) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#hasIcon(const char*) const">hasIcon</a>(const char* name) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#hasIcon(const BString&) const">hasIcon</a>(const BString& name) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#iconNames(BStringArray&) const">iconNames</a>(BStringArray& names) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#setText(const BString&, const BString&)">setText</a>(const BString& name, const BString& text);</td></tr>
				<tr><td align="right">bool </td><td><a href="#removeText(const BString&)">removeText</a>(const BString& name);</td></tr>
				<tr><td align="right">const BString&amp; </td><td><a href="#text(const BString&) const">text</a>(const BString& name) const;</td></tr>
				<tr><td align="right">const BString&amp; </td><td><a href="#text(const char*) const">text</a>(const char* name) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#hasText(const char*) const">hasText</a>(const char* name) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#hasText(const BString&) const">hasText</a>(const BString& name) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#textNames(BStringArray&) const">textNames</a>(BStringArray& names) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#setWord(const BString&, const BString&)">setWord</a>(const BString& name, const BString& word);</td></tr>
				<tr><td align="right">bool </td><td><a href="#removeWord(const BString&)">removeWord</a>(const BString& name);</td></tr>
				<tr><td align="right">const BString&amp; </td><td><a href="#word(const BString&) const">word</a>(const BString& name) const;</td></tr>
				<tr><td align="right">const BString&amp; </td><td><a href="#word(const char*) const">word</a>(const char* name) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#hasWord(const char*) const">hasWord</a>(const char* name) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#hasWord(const BString&) const">hasWord</a>(const BString& name) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#wordNames(BStringArray&) const">wordNames</a>(BStringArray& names) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#setTrans(const BString&, const BString&)">setTrans</a>(const BString& text, const BString& trans);</td></tr>
				<tr><td align="right">bool </td><td><a href="#removeTrans(const BString&)">removeTrans</a>(const BString& text);</td></tr>
				<tr><td align="right">const BString&amp; </td><td><a href="#trans(const BString&) const">trans</a>(const BString& text) const;</td></tr>
				<tr><td align="right">const BString&amp; </td><td><a href="#trans(const char*) const">trans</a>(const char* text) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#hasTrans(const char*) const">hasTrans</a>(const char* text) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#hasTrans(const BString&) const">hasTrans</a>(const BString& text) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#transNames(BStringArray&) const">transNames</a>(BStringArray& texts) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#translate(const BString&, BString&) const">translate</a>(const BString& text, BString& output) const;</td></tr>
				<tr><td align="right">const BString&amp; </td><td><a href="#translate(const BString&) const">translate</a>(const BString& text) const;</td></tr>
				<tr><td align="right">void </td><td><a href="#clearAll()">clearAll</a>();</td></tr>
				<tr><td align="right">bool </td><td><a href="#clearValues()">clearValues</a>();</td></tr>
				<tr><td align="right">bool </td><td><a href="#clearColors()">clearColors</a>();</td></tr>
				<tr><td align="right">bool </td><td><a href="#clearImages()">clearImages</a>();</td></tr>
				<tr><td align="right">bool </td><td><a href="#clearIcons()">clearIcons</a>();</td></tr>
				<tr><td align="right">bool </td><td><a href="#clearTrans()">clearTrans</a>();</td></tr>
				<tr><td align="right">bool </td><td><a href="#clearWords()">clearWords</a>();</td></tr>
				<tr><td align="right">bool </td><td><a href="#clearTexts()">clearTexts</a>();</td></tr>
				<tr><td align="right">bool </td><td><a href="#cleanTranslation()">cleanTranslation</a>();</td></tr>
				<tr><td align="right">BStyle* </td><td><a href="#addAnnex(const BString&)">addAnnex</a>(const BString& name);</td></tr>
				<tr><td align="right">bool </td><td><a href="#addAnnex(BStyle*)">addAnnex</a>(BStyle* annex);</td></tr>
				<tr><td align="right">bool </td><td><a href="#removeAnnex(const BString&)">removeAnnex</a>(const BString& name);</td></tr>
				<tr><td align="right">bool </td><td><a href="#removeAnnex(BStyle*)">removeAnnex</a>(BStyle* annex);</td></tr>
				<tr><td align="right">bool </td><td><a href="#clearAnnexes()">clearAnnexes</a>();</td></tr>
				<tr><td align="right">int </td><td><a href="#annexCount() const">annexCount</a>() const;</td></tr>
				<tr><td align="right">BStyle* </td><td><a href="#annex(int)">annex</a>(int index);</td></tr>
				<tr><td align="right">const BStyle* </td><td><a href="#annex(int) const">annex</a>(int index) const;</td></tr>
				<tr><td align="right">BStyle* </td><td><a href="#annex(const BString&)">annex</a>(const BString& name);</td></tr>
				<tr><td align="right">const BStyle* </td><td><a href="#annex(const BString&) const">annex</a>(const BString& name) const;</td></tr>
				<tr><td align="right">BStyle* </td><td><a href="#annex(const char*)">annex</a>(const char* name);</td></tr>
				<tr><td align="right">const BStyle* </td><td><a href="#annex(const char*) const">annex</a>(const char* name) const;</td></tr>
			</table>
			<h2>public</h2>
			<table id="public">
				<tr><td align="right">BStyle* </td><td><a href="#root()">root</a>();</td></tr>
				<tr><td align="right">const BStyle* </td><td><a href="#root() const">root</a>() const;</td></tr>
				<tr><td align="right">BStyle* </td><td><a href="#parent()">parent</a>();</td></tr>
				<tr><td align="right">const BStyle* </td><td><a href="#parent() const">parent</a>() const;</td></tr>
				<tr><td align="right">BStyle* </td><td><a href="#parent(const BString&)">parent</a>(const BString& name);</td></tr>
				<tr><td align="right">const BStyle* </td><td><a href="#parent(const BString&) const">parent</a>(const BString& name) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#addChild(BStyle*)">addChild</a>(BStyle* child);</td></tr>
				<tr><td align="right">BStyle* </td><td><a href="#addChild(const BString&)">addChild</a>(const BString& name);</td></tr>
				<tr><td align="right">BStyle* </td><td><a href="#addChild(const BString&, const BString&)">addChild</a>(const BString& type, const BString& name);</td></tr>
				<tr><td align="right">bool </td><td><a href="#removeChild(BStyle*)">removeChild</a>(BStyle* child);</td></tr>
				<tr><td align="right">bool </td><td><a href="#removeChild(const BString&)">removeChild</a>(const BString& name);</td></tr>
				<tr><td align="right">bool </td><td><a href="#removeChild(const BString&, const BString&)">removeChild</a>(const BString& type, const BString& name);</td></tr>
				<tr><td align="right">void </td><td><a href="#clearChildren()">clearChildren</a>();</td></tr>
				<tr><td align="right">int </td><td><a href="#childCount() const">childCount</a>() const;</td></tr>
				<tr><td align="right">BStyle* </td><td><a href="#child(int)">child</a>(int index);</td></tr>
				<tr><td align="right">const BStyle* </td><td><a href="#child(int) const">child</a>(int index) const;</td></tr>
				<tr><td align="right">BStyle* </td><td><a href="#child(const BString&,const BString&)">child</a>(const BString& type, const BString& name = BString());</td></tr>
				<tr><td align="right">const BStyle* </td><td><a href="#child(const BString&,const BString&) const">child</a>(const BString& type, const BString& name = BString()) const;</td></tr>
				<tr><td align="right">BStyle* </td><td><a href="#locate(const BString&)">locate</a>(const BString& path);</td></tr>
				<tr><td align="right">const BStyle* </td><td><a href="#locate(const BString&) const">locate</a>(const BString& path) const;</td></tr>
				<tr><td align="right">BStyle* </td><td><a href="#prev()">prev</a>();</td></tr>
				<tr><td align="right">const BStyle* </td><td><a href="#prev() const">prev</a>() const;</td></tr>
				<tr><td align="right">BStyle* </td><td><a href="#next()">next</a>();</td></tr>
				<tr><td align="right">const BStyle* </td><td><a href="#next() const">next</a>() const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#contain(const BStyle*) const">contain</a>(const BStyle* style) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#above(const BStyle*) const">above</a>(const BStyle* style) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#under(const BStyle*) const">under</a>(const BStyle* style) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#setIndex(int)">setIndex</a>(int index);</td></tr>
				<tr><td align="right">int </td><td><a href="#index() const">index</a>() const;</td></tr>
				<tr><td align="right">int </td><td><a href="#level() const">level</a>() const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#raise()">raise</a>();</td></tr>
				<tr><td align="right">bool </td><td><a href="#lower()">lower</a>();</td></tr>
			</table>
			<div id="desc">
				<h2>详细介绍：</h2>
				<p>BStyle是样式类，包含了控件可使用的字体，颜色，数值等数据。可通过BWidget::setStyleSheet(text)方法为特定的控件设置样式表。使用方法BApplication::setStyleSheet(text)等方法为整个程序设置样式表。</p><p>样式的分配可以用于控件（widget），项目（item），布局器（layout）等。</p><p>样式匹配通过三个属性分别是类型、名称、继承属性、传递属性。样式的类型用于匹配目标对象类型，如BButton为类型，那么BButton和BCheckBox,BRadioBox三者都可以匹配成功，但如果继承属性没有启用，那么就只有BButton可以匹配成功。</p><p>传递属性（descendant）指示此样式是否向子孙对象传递。若不向下传递则只有初级的对象可应用此样式。</p><p>对于繁杂的页面中容易混淆样式选择的情况，可以使用名称进行明确指定。名称可以单独而不必和类型一起。</p><p>预定的枚举值分别对应特定类型的值，除预定样式外还可以配置各类型的自定义资源。</p><p>一个样式中可以包含多个附件样式（annex style），这些样式不会被子控件使用。附件样式常常用于对控件的特殊部分进行配置，如标题、箭头、目标之类的对象。附件样式通常被直接使用名称来获取。</p><p>翻译主要使用trans资源，单词资源（word）是作为翻译的辅助数据。要切换语言时需要先清理掉之前的转换数据，再添加新的文本转换数据。使用方法cleanTranslation()对现有翻译数据进行清理。</p><p>控件的私有样式可使用方法BWidget::setStyle()和BWidget::style()进行设置和获取，其真实应用的样式对象可通过方法BWidget::realStyle()获得。在实际开发中更推荐对控件的样式事件进行处理（BWidget::styleEvent()），当控件的样式被改变时产生此事件，控件对样式事件的默认处理中会发出信号：Signal_Styled，开发中对此信号进行处理也是很方便的。</p><div>参考：<a href="./StyleSheet.html">样式表</a></div><h4>信号表：</h4><table>
					<tr><td>Signal_Dirty</td><td>数据被改变时发出，无值。</td></tr>
					<tr><td>Signal_Insert</td><td>插入子样式时发出，值为：BStyle* child，附件是此样式。</td></tr>
					<tr><td>Signal_Remove</td><td>删除子样式时发出，值为：BStyle* child，附件是此样式。</td></tr>
					<tr><td>Signal_OrderChanged</td><td>此样式在父样式中的次序变化时发出，值为：int index。</td></tr></table>
			</div>
			<h2 id="docs">成员文档：</h2>
			<div id="BStyle(BStyle*)">
				<h3>BStyle(BStyle* parent = 0);</h3>
				<p>构造一个样式对象，parent指定其父样式。</p>
			</div>
			<div id="BStyle(const BColor&,BStyle*)">
				<h3>BStyle(const BColor&amp; color, BStyle* parent = 0);</h3>
				<p>构造一个样式对象，使用color初始化各个基础颜色，parent指定其父样式。</p>
			</div>
			<div id="BStyle(const BString&,BStyle*)">
				<h3>BStyle(const BString&amp; name, BStyle* parent = 0);</h3>
				<p>构造一个样式对象，name指定其名称，parent指定其父样式。</p>
			</div>
			<div id="BStyle(const BString&, const BString&,BStyle*)">
				<h3>BStyle(const BString&amp; type, const BString&amp; name, BStyle* parent = 0);</h3>
				<p>构造一个样式对象，type指定其类型，name指定其名称，parent指定其父样式。</p>
			</div>
			<div id="BStyle(const BStyle&)">
				<h3>BStyle(const BStyle&amp; other);</h3>
				<p>构造一个样式对象，复制另一个样式的数据。</p>
			</div>
			<div id="~BStyle()">
				<h3>~BStyle();</h3>
				<p>析构一个样式对象。</p>
			</div>
			<div id="copy(const BStyle*)">
				<h3>virtual void copy(const BStyle* other);</h3>
				<p>复制另一个样式的数据到此样式中。</p>
			</div>
			<div id="clone() const">
				<h3>virtual BStyle* clone() const;</h3>
				<p>创建一个新的样式对象，并复制此样式中的数据。</p>
			</div>
			<div id="reset()">
				<h3>void reset();</h3>
				<p>清空所有数据。</p>
			</div>
			<div id="reset(const BColor&)">
				<h3>void reset(const BColor&amp; color);</h3>
				<p>清空所有数据，重新使用color进行初化。</p>
			</div>
			<div id="setType(const BString&)">
				<h3>void setType(const BString&amp; type);</h3>
				<p>设置匹配类型。</p>
			</div>
			<div id="type() const">
				<h3>const BString&amp; type() const;</h3>
				<p>获得类型。</p>
			</div>
			<div id="setHeritable(bool)">
				<h3>void setHeritable(bool heritable);</h3>
				<p>设置此样式对象是否可以类型继承。</p>
			</div>
			<div id="heritable() const">
				<h3>bool heritable() const;</h3>
				<p>取得此样式是否类型可继承。</p>
			</div>
			<div id="setDescendant(bool)">
				<h3>void setDescendant(bool descendant);</h3>
				<p>设置此样式是否向下层传递。</p>
			</div>
			<div id="descendant() const">
				<h3>bool descendant() const;</h3>
				<p>获得此样式是否向下层传递。</p>
			</div>
			<div id="setFont(BFont*)">
				<h3>void setFont(BFont* font);</h3>
				<p>设置字体对象。</p>
			</div>
			<div id="font() const">
				<h3>const BFont* font() const;</h3>
				<p>取得字体对象，或样式中无法取得，则取全局字体。</p>
			</div>
			<div id="font()">
				<h3>BFont* font();</h3>
				<p>取得字体对象，或样式中无法取得，则取全局字体。</p>
			</div>
			<div id="setValue(StyleValue, const BValue&)">
				<h3>void setValue(StyleValue name, const BValue&amp; value);</h3>
				<p>修改设置的数值，name枚举指定预置名称，value指定新的数值。</p>
			</div>
			<div id="removeVlaue(StyleValue)">
				<h3>bool removeVlaue(StyleValue name);</h3>
				<p>删除指定的预置数值，整数name指定其名称。</p>
			</div>
			<div id="value(StyleValue) const">
				<h3>const BValue&amp; value(StyleValue name) const;</h3>
				<p>获得预定义的值。</p>
			</div>
			<div id="setValue(const BString&, const BValue&)">
				<h3>bool setValue(const BString&amp; name, const BValue&amp; value);</h3>
				<p>设置自定义数值资源，name指定其名称，value指定数值。</p>
			</div>
			<div id="removeValue(const BString&)">
				<h3>bool removeValue(const BString&amp; name);</h3>
				<p>移除自定义的命名数值资源。</p>
			</div>
			<div id="value(const char*) const">
				<h3>const BValue&amp; value(const char* name) const;</h3>
				<p>移除自定义的命名数值资源。</p>
			</div>
			<div id="value(const BString&) const">
				<h3>const BValue&amp; value(const BString&amp; name) const;</h3>
				<p>取得指定名称的自定义数值资源。</p>
			</div>
			<div id="hasValue(StyleValue) const">
				<h3>bool hasValue(StyleValue name) const;</h3>
				<p>判断是否包含指定的数值。</p>
			</div>
			<div id="valueNames(BArray<StyleValue>&) const">
				<h3>bool valueNames(BArray&lt;StyleValue&gt;&amp; names) const;</h3>
				<p>取得全部已有的数值名称集合，可使用获得的各个名称取得对应的值。</p>
			</div>
			<div id="valueNames(BStringArray&) const">
				<h3>bool valueNames(BStringArray&amp; names) const;</h3>
				<p>取得全部已有的数值名称集合，可使用获得的各个名称取得对应的值。</p>
			</div>
			<div id="setColor(StyleColor, State, const BColor&)">
				<h3>bool setColor(StyleColor name, State state, const BColor&amp; color);</h3>
				<p>设置指定名称和状态的颜色值。由于调色板是一种颜色有对应的状态颜色组，此方法的name指定其名称，状态值指定某个状态，执行此方法会根据状态值对特定的若干状态颜色值进行修改。</p>
			</div>
			<div id="removeColor(StyleColor, State)">
				<h3>bool removeColor(StyleColor name, State state);</h3>
				<p>移除指定名称和状态的颜色值。此方法会根据指定的状态值将对应的若干状态颜色值进行修改。</p>
			</div>
			<div id="color(StyleColor, State) const">
				<h3>const BColor&amp; color(StyleColor name, State state) const;</h3>
				<p>取得指定名称的特定状态的颜色值，即将颜色名称值加上状态值的和作为键取得对应的颜色值。</p>
			</div>
			<div id="setColor(const BString&, const BColor&)">
				<h3>bool setColor(const BString&amp; name, const BColor&amp; color);</h3>
				<p>设置自定义名称的颜色值，name指定名称，color指定颜色值。</p>
			</div>
			<div id="removeColor(const BString&)">
				<h3>bool removeColor(const BString&amp; name);</h3>
				<p>移除自定义颜色值，name指定名称。</p>
			</div>
			<div id="color(const char*) const">
				<h3>const BColor&amp; color(const char* name) const;</h3>
				<p>取得指定名称的颜色值。</p>
			</div>
			<div id="color(const BString&) const">
				<h3>const BColor&amp; color(const BString&amp; name) const;</h3>
				<p>取得指定名称的颜色值。</p>
			</div>
			<div id="hasColor(StyleColor) const">
				<h3>bool hasColor(StyleColor name) const;</h3>
				<p>判断是否包含指定名称的颜色值。</p>
			</div>
			<div id="hasColor(const char*) const">
				<h3>bool hasColor(const char* name) const;</h3>
				<p>判断是否包含指定名称的颜色值。</p>
			</div>
			<div id="hasColor(const BString&) const">
				<h3>bool hasColor(const BString&amp; name) const;</h3>
				<p>判断是否包含指定名称的颜色值。</p>
			</div>
			<div id="colorNames(BStringArray&) const">
				<h3>bool colorNames(BStringArray&amp; names) const;</h3>
				<p>取得全部自定义颜色名称，使用获得的名称可分别取得对应的颜色值。</p>
			</div>
			<div id="setImage(StyleImage, State, BImage*)">
				<h3>bool setImage(StyleImage name, State state, BImage* image);</h3>
				<p>设置指定名称和状态对应的图像。因为每个图像名对应一个状态图像组，此方法会将指定的图像放入指定状态值对应的若干状态图像中。</p>
			</div>
			<div id="removeImage(StyleImage, State)">
				<h3>bool removeImage(StyleImage name, State state);</h3>
				<p>根据指定的图像名称和状态值选取若干图像进行移除。</p>
			</div>
			<div id="image(StyleImage, State) const">
				<h3>BImage* image(StyleImage name, State state) const;</h3>
				<p>根据指定的图像名称和状态值取得图像。</p>
			</div>
			<div id="setImage(const BString&, BImage*)">
				<h3>bool setImage(const BString&amp; name, BImage* image);</h3>
				<p>设置命名图像资源，name指定名称，image指定图像对象。</p>
			</div>
			<div id="removeImage(const BString&)">
				<h3>bool removeImage(const BString&amp; name);</h3>
				<p>移除指定名称的图像。</p>
			</div>
			<div id="image(const char*) const">
				<h3>BImage* image(const char* name) const;</h3>
				<p>获得指定名称铁图像资源。</p>
			</div>
			<div id="image(const BString&) const">
				<h3>BImage* image(const BString&amp; name) const;</h3>
				<p>获得指定名称的图像。</p>
			</div>
			<div id="hasImage(StyleImage, State) const">
				<h3>bool hasImage(StyleImage name, State state) const;</h3>
			</div>
			<div id="hasImage(const char*) const">
				<h3>bool hasImage(const char* name) const;</h3>
				<p>判断此样式是否包含指定名称的图像资源。</p>
			</div>
			<div id="hasImage(const BString&) const">
				<h3>bool hasImage(const BString&amp; name) const;</h3>
				<p>判断此样式是否包含指定名称的图像资源。</p>
			</div>
			<div id="imageNames(BStringArray&) const">
				<h3>bool imageNames(BStringArray&amp; names) const;</h3>
				<p>获得全部图像资源的名称，之后可取得各个名称对应的图像资源。</p>
			</div>
			<div id="setIcon(StyleIcon, BIcon*)">
				<h3>bool setIcon(StyleIcon name, BIcon* icon);</h3>
				<p>设置预设命名的图标。</p>
			</div>
			<div id="removeIcon(StyleIcon)">
				<h3>bool removeIcon(StyleIcon name);</h3>
				<p>移除指定的预设样式的图标。</p>
			</div>
			<div id="icon(StyleIcon) const">
				<h3>BIcon* icon(StyleIcon name) const;</h3>
				<p>取得指定的预设图标。</p>
			</div>
			<div id="setIcon(const BString&, BIcon*)">
				<h3>bool setIcon(const BString&amp; name, BIcon* icon);</h3>
				<p>设置指定名称的图标资源。</p>
			</div>
			<div id="removeIcon(const BString&)">
				<h3>bool removeIcon(const BString&amp; name);</h3>
				<p>移除指定名称的图标资源。</p>
			</div>
			<div id="icon(const BString&) const">
				<h3>BIcon* icon(const BString&amp; name) const;</h3>
				<p>取得指定名称的图标资源。</p>
			</div>
			<div id="icon(const char*) const">
				<h3>BIcon* icon(const char* name) const;</h3>
				<p>取得指定名称的图标资源。</p>
			</div>
			<div id="hasIcon(StyleIcon) const">
				<h3>bool hasIcon(StyleIcon name) const;</h3>
				<p>判断是否包含指定名称的图标。</p>
			</div>
			<div id="hasIcon(const char*) const">
				<h3>bool hasIcon(const char* name) const;</h3>
				<p>判断是否包含指定名称的图标资源。</p>
			</div>
			<div id="hasIcon(const BString&) const">
				<h3>bool hasIcon(const BString&amp; name) const;</h3>
				<p>判断是否包含指定名称的图标资源。</p>
			</div>
			<div id="iconNames(BStringArray&) const">
				<h3>bool iconNames(BStringArray&amp; names) const;</h3>
				<p>获得全部图标资源的名称集合，之后可获得各个名称对应的图标资源。</p>
			</div>
			<div id="setText(const BString&, const BString&)">
				<h3>bool setText(const BString&amp; name, const BString&amp; text);</h3>
				<p>设置命名文本资源，name指定名称，text指定文本。</p>
			</div>
			<div id="removeText(const BString&)">
				<h3>bool removeText(const BString&amp; name);</h3>
				<p>移除指定名称的文本资源。</p>
			</div>
			<div id="text(const BString&) const">
				<h3>const BString&amp; text(const BString&amp; name) const;</h3>
				<p>取得指定名称的文本资源。</p>
			</div>
			<div id="text(const char*) const">
				<h3>const BString&amp; text(const char* name) const;</h3>
				<p>取得指定名称的文本资源。</p>
			</div>
			<div id="hasText(const char*) const">
				<h3>bool hasText(const char* name) const;</h3>
				<p>判断是否包含指定名称的文本资源。</p>
			</div>
			<div id="hasText(const BString&) const">
				<h3>bool hasText(const BString&amp; name) const;</h3>
				<p>判断是否包含指定名称的文本资源。</p>
			</div>
			<div id="textNames(BStringArray&) const">
				<h3>bool textNames(BStringArray&amp; names) const;</h3>
				<p>获得全部文本资源的名称集合。</p>
			</div>
			<div id="setWord(const BString&, const BString&)">
				<h3>bool setWord(const BString&amp; name, const BString&amp; word);</h3>
				<p>设置指定名称的单词资源，单词资源参与逐词翻译。</p>
			</div>
			<div id="removeWord(const BString&)">
				<h3>bool removeWord(const BString&amp; name);</h3>
				<p>移除指定的名称的单词资源。</p>
			</div>
			<div id="word(const BString&) const">
				<h3>const BString&amp; word(const BString&amp; name) const;</h3>
				<p>取得指定名称的单词资源。</p>
			</div>
			<div id="word(const char*) const">
				<h3>const BString&amp; word(const char* name) const;</h3>
				<p>取得指定名称的单词资源。</p>
			</div>
			<div id="hasWord(const char*) const">
				<h3>bool hasWord(const char* name) const;</h3>
				<p>判断是否包含指定名称的单词。</p>
			</div>
			<div id="hasWord(const BString&) const">
				<h3>bool hasWord(const BString&amp; name) const;</h3>
				<p>判断是否包含指定名称的单词。</p>
			</div>
			<div id="wordNames(BStringArray&) const">
				<h3>bool wordNames(BStringArray&amp; names) const;</h3>
				<p>获得全部单词资源的名称集合。</p>
			</div>
			<div id="setTrans(const BString&, const BString&)">
				<h3>bool setTrans(const BString&amp; text, const BString&amp; trans);</h3>
				<p>设置文本翻译资源，text指定源文本，trans指定翻译文本。</p>
			</div>
			<div id="removeTrans(const BString&)">
				<h3>bool removeTrans(const BString&amp; text);</h3>
				<p>移除指定的翻译资源。</p>
			</div>
			<div id="trans(const BString&) const">
				<h3>const BString&amp; trans(const BString&amp; text) const;</h3>
				<p>取得指定的翻译资源，text指定源文本。</p>
			</div>
			<div id="trans(const char*) const">
				<h3>const BString&amp; trans(const char* text) const;</h3>
				<p>取得指定的翻译资源，text指定源文本。</p>
			</div>
			<div id="hasTrans(const char*) const">
				<h3>bool hasTrans(const char* text) const;</h3>
				<p>判断是否包含指定的翻译资源。</p>
			</div>
			<div id="hasTrans(const BString&) const">
				<h3>bool hasTrans(const BString&amp; text) const;</h3>
				<p>判断是否包含指定的翻译资源。</p>
			</div>
			<div id="transNames(BStringArray&) const">
				<h3>bool transNames(BStringArray&amp; texts) const;</h3>
				<p>取得全部翻译资源的源文本。</p>
			</div>
			<div id="translate(const BString&, BString&) const">
				<h3>bool translate(const BString&amp; text, BString&amp; output) const;</h3>
				<p>对text文本进行翻译，output为输出文本。若翻译失败output文本为空。此翻译过程中首先使用翻译资源直接翻译，若失败使用单词资源尝试逐词翻译。</p>
			</div>
			<div id="translate(const BString&) const">
				<h3>const BString&amp; translate(const BString&amp; text) const;</h3>
				<p>执行翻译，并返回临时字符串。</p>
			</div>
			<div id="clearAll()">
				<h3>void clearAll();</h3>
				<p>清空所有样式数据。</p>
			</div>
			<div id="clearValues()">
				<h3>bool clearValues();</h3>
				<p>清空所有样式值，包括预置值和资源值。</p>
			</div>
			<div id="clearColors()">
				<h3>bool clearColors();</h3>
				<p>清空所有颜色值，包括预置颜色和颜色资源。</p>
			</div>
			<div id="clearImages()">
				<h3>bool clearImages();</h3>
				<p>清空所有图像数据，包括预置图像和资源图像。</p>
			</div>
			<div id="clearIcons()">
				<h3>bool clearIcons();</h3>
				<p>清空所有图标数据，包括预置图标和资源图标。</p>
			</div>
			<div id="clearTrans()">
				<h3>bool clearTrans();</h3>
				<p>清空所有翻译资源。</p>
			</div>
			<div id="clearWords()">
				<h3>bool clearWords();</h3>
				<p>清空所有单词资源。</p>
			</div>
			<div id="clearTexts()">
				<h3>bool clearTexts();</h3>
				<p>清空所有文本资源。</p>
			</div>
			<div id="cleanTranslation()">
				<h3>bool cleanTranslation();</h3>
			</div>
			<div id="addAnnex(const BString&)">
				<h3>BStyle* addAnnex(const BString&amp; name);</h3>
				<p>创建一个新的附件样式，并添加为子样式，name指定新附件样式的名称。执行成功返回新创建的附件样式。</p>
			</div>
			<div id="addAnnex(BStyle*)">
				<h3>bool addAnnex(BStyle* annex);</h3>
				<p>添加一个附件样式，此样式不会被传递给子控件。</p>
			</div>
			<div id="removeAnnex(const BString&)">
				<h3>bool removeAnnex(const BString&amp; name);</h3>
				<p>找到名称为name的附件样式并移除。</p>
			</div>
			<div id="removeAnnex(BStyle*)">
				<h3>bool removeAnnex(BStyle* annex);</h3>
				<p>移除一个附件样式。</p>
			</div>
			<div id="clearAnnexes()">
				<h3>bool clearAnnexes();</h3>
				<p>清空所有的附件样式。</p>
			</div>
			<div id="annexCount() const">
				<h3>int annexCount() const;</h3>
				<p>获得附件样式的数量。</p>
			</div>
			<div id="annex(int)">
				<h3>BStyle* annex(int index);</h3>
				<p>获得指定索引位置的附件样式。</p>
			</div>
			<div id="annex(int) const">
				<h3>const BStyle* annex(int index) const;</h3>
				<p>获得指定索引位置的附件样式。</p>
			</div>
			<div id="annex(const BString&)">
				<h3>BStyle* annex(const BString&amp; name);</h3>
				<p>获得指定名称的附件样式。</p>
			</div>
			<div id="annex(const BString&) const">
				<h3>const BStyle* annex(const BString&amp; name) const;</h3>
				<p>获得指定名称的附件样式。</p>
			</div>
			<div id="annex(const char*)">
				<h3>BStyle* annex(const char* name);</h3>
				<p>获得指定名称的附件样式，由于直接使用字符串的情况很多，此方法可以优化执行效率。</p>
			</div>
			<div id="annex(const char*) const">
				<h3>const BStyle* annex(const char* name) const;</h3>
				<p>获得指定名称的附件样式，由于直接使用字符串的情况很多，此方法可以优化执行效率。</p>
			</div>
			<div id="root()">
				<h3>BStyle* root();</h3>
				<p>获得根样式对象。</p>
			</div>
			<div id="root() const">
				<h3>const BStyle* root() const;</h3>
				<p>获得根样式对象。</p>
			</div>
			<div id="parent()">
				<h3>BStyle* parent();</h3>
				<p>获得父样式对象。</p>
			</div>
			<div id="parent() const">
				<h3>const BStyle* parent() const;</h3>
				<p>获得父样式对象。</p>
			</div>
			<div id="parent(const BString&)">
				<h3>BStyle* parent(const BString&amp; name);</h3>
				<p>获得名称为name的父样式对象。</p>
			</div>
			<div id="parent(const BString&) const">
				<h3>const BStyle* parent(const BString&amp; name) const;</h3>
				<p>获得名称为name的父样式对象。</p>
			</div>
			<div id="addChild(BStyle*)">
				<h3>bool addChild(BStyle* child);</h3>
				<p>添加子样式。</p>
			</div>
			<div id="addChild(const BString&)">
				<h3>BStyle* addChild(const BString&amp; name);</h3>
				<p>添加一个新的样式作为子样式，name指定新样式的名称。</p>
			</div>
			<div id="addChild(const BString&, const BString&)">
				<h3>BStyle* addChild(const BString&amp; type, const BString&amp; name);</h3>
				<p>添加一个新的样式作为子样式，type指定新样式的类型，name指定新样式的名称。</p>
			</div>
			<div id="removeChild(BStyle*)">
				<h3>bool removeChild(BStyle* child);</h3>
				<p>移除一个子样式。</p>
			</div>
			<div id="removeChild(const BString&)">
				<h3>bool removeChild(const BString&amp; name);</h3>
				<p>移除指定名称的子样式。</p>
			</div>
			<div id="removeChild(const BString&, const BString&)">
				<h3>bool removeChild(const BString&amp; type, const BString&amp; name);</h3>
				<p>移除一个类型为type且名称为name的子样式。</p>
			</div>
			<div id="clearChildren()">
				<h3>void clearChildren();</h3>
				<p>移除所有子样式。</p>
			</div>
			<div id="childCount() const">
				<h3>int childCount() const;</h3>
				<p>获得子样式数量。</p>
			</div>
			<div id="child(int)">
				<h3>BStyle* child(int index);</h3>
				<p>获得指定索引位置的子样式。</p>
			</div>
			<div id="child(int) const">
				<h3>const BStyle* child(int index) const;</h3>
				<p>获得指定索引位置的子样式。</p>
			</div>
			<div id="child(const BString&,const BString&)">
				<h3>BStyle* child(const BString&amp; type, const BString&amp; name = BString());</h3>
				<p>获得类型为type且名称为name的子样式，name为空时忽略名称。</p>
			</div>
			<div id="child(const BString&,const BString&) const">
				<h3>const BStyle* child(const BString&amp; type, const BString&amp; name = BString()) const;</h3>
				<p>获得类型为type且名称为name的子样式，name为空时忽略名称。</p>
			</div>
			<div id="locate(const BString&)">
				<h3>BStyle* locate(const BString&amp; path);</h3>
				<p>按照指定的路径进行嵌套搜索子样式。</p>
			</div>
			<div id="locate(const BString&) const">
				<h3>const BStyle* locate(const BString&amp; path) const;</h3>
				<p>按照指定的路径进行嵌套搜索子样式。</p>
			</div>
			<div id="prev()">
				<h3>BStyle* prev();</h3>
				<p>获得前一个同级样式对象。</p>
			</div>
			<div id="prev() const">
				<h3>const BStyle* prev() const;</h3>
				<p>获得前一个同级样式对象。</p>
			</div>
			<div id="next()">
				<h3>BStyle* next();</h3>
				<p>获得后一个同级样式对象。</p>
			</div>
			<div id="next() const">
				<h3>const BStyle* next() const;</h3>
				<p>获得后一个同级样式对象。</p>
			</div>
			<div id="contain(const BStyle*) const">
				<h3>bool contain(const BStyle* style) const;</h3>
				<p>判断是否包含指定的子样式。</p>
			</div>
			<div id="above(const BStyle*) const">
				<h3>bool above(const BStyle* style) const;</h3>
				<p>判断此样式是否是指定样式style的上级。</p>
			</div>
			<div id="under(const BStyle*) const">
				<h3>bool under(const BStyle* style) const;</h3>
				<p>判断此样式是否是指定样式style的下级。</p>
			</div>
			<div id="setIndex(int)">
				<h3>bool setIndex(int index);</h3>
				<p>调整此样式在父样式中的位置。</p>
			</div>
			<div id="index() const">
				<h3>int index() const;</h3>
				<p>获得此样式在父样式中索引位置。</p>
			</div>
			<div id="level() const">
				<h3>int level() const;</h3>
				<p>获得此样式的层级数。</p>
			</div>
			<div id="raise()">
				<h3>bool raise();</h3>
				<p>移动此样式的排序到首位。</p>
			</div>
			<div id="lower()">
				<h3>bool lower();</h3>
				<p>移动此样式的排序到末位。</p>
			</div>
		</div>
	</body>
</html>